package immutablecollections.functions;

/**
 * A function that takes a single argument and returns a value of type O
 */
public interface Function1<O>
{
    /**
     * Invoke the function on `arg`, returning a result of type O.
     */
    O invoke(Object arg);
}
